home *** CD-ROM | disk | FTP | other *** search
/ Skunkware 5 / Skunkware 5.iso / src / Tools / libwais / ir / Imakefile < prev    next >
Encoding:
Makefile  |  1995-05-03  |  5.4 KB  |  266 lines

  1. #    @(#) Imakefile 10.2 93/09/18 
  2. #
  3. # This is a sample server, Z39.50 library, and a user interface stub
  4. #  The Z39.50 library was primariy written by Harry Morris and the search
  5. #  engine was primarily written by Brewster Kahle.
  6. #  -brewster 4/90
  7.  
  8. # S000 18 Sep 1993 rr@sco.com
  9. # placed under SCCS and turned into an Imakefile
  10. #
  11. # $Log: Makefile,v $
  12. # Revision 1.8.1.1  1992/07/11  00:41:46  curtisg
  13. # Added dependencies, moved things around
  14. # (notably, use ../lib instead of ../bin for libraries.)
  15. #
  16. # Revision 1.8  92/05/10  14:42:26  jonathan
  17. # Changed CLIENT_LOCAL_SRC ot ui-local.c.  Added link to ui.c
  18. # Revision 1.7  92/04/30  12:30:22  jonathan
  19. # Changed CC = to use cc instead.  It's the right thing to do...
  20. # Revision 1.6  92/04/28  17:09:05  jonathan
  21. # Added lock.[co] to lists.
  22. # Revision 1.5  92/02/27  09:15:28  jonathan
  23. # fixed compile line for ui-local.o
  24. # Revision 1.4  92/02/24  10:06:59  jonathan
  25. # Removed -DBOOL from CFLAGS
  26. # Revision 1.3  92/02/13  13:02:44  jonathan
  27. # Added CLIENT_LIB to default, and fixed rule.
  28. # Revision 1.2  92/02/13  12:28:26  jonathan
  29. # Removed object and boolean sources from definitions.
  30. # Revision 1.1  92/02/13  11:55:08  jonathan
  31. # Initial revision
  32. #
  33.  
  34. #  If a namespace resolver is not used (gethostbyname),
  35. #   set RESOLVER to nothing, otherwise -lresolv
  36. #  gcc vs cc:  This library was written on a bunch of ANSI routines.
  37. #   the ones that did not exist in gcc or for non-ANSI cc are in ustubs.c
  38. # for old BSD cc or System V, see cflags below
  39.  
  40. LIBDIR        = ../lib
  41. BINDIR        = ../bin
  42.  
  43. SERVER_CMD    = waisserver            # wais server
  44. SERVER1_CMD    = waisserver1            # single task wais server
  45. INDEX_CMD    = waisindex             # file indexer
  46.  
  47. PROTOCOL_LIB     = $(LIBDIR)/libwais.a        # protocol library
  48. CLIENT_LIB     = $(LIBDIR)/libclient.a        # client library
  49. INV_LIB     = $(LIBDIR)/libinv.a        # inverted file library
  50. SIG_LIB     = $(LIBDIR)/libsig.a        # signature file library
  51. LIBFTW        = $(LIBDIR)/libftw.a        # support library
  52.  
  53. SHELL_UI_SRC = ../ui/shell-ui.c
  54.  
  55. #
  56. # Configure these for your system.
  57. #
  58.  
  59. RM = /bin/rm -f
  60. AR = ar 
  61. ARFLAGS = r
  62. INSTALL = cp
  63.  
  64. # on SGIs, set this to true
  65. RANLIB = true
  66.  
  67. # C Compiler.  Use either cc or gcc.  Comment this out in release to
  68. # inherit from top level.
  69. CC = cc
  70.  
  71. # Compiler & linker flags.
  72. # Compiler debug flag.  Use -g for debugging, -O for optimization.
  73. # for antique bsd add -DBSD 
  74. # for System V add -DSYSV 
  75. # for XENIX add -M3e -Zi
  76. # -DSECURE_SERVER for waisserver to setuid to uucp after startup.
  77. CFLAGS = -O -I../ir -DSECURE_SERVER -DRELEVANCE_FEEDBACK -DUSG -DSYSV
  78.  
  79. # dealing with taking an intenet name and resolving it.  
  80. # set to -lresolv or nothing
  81. #RESOLVER=    #-lresolv 
  82. RESOLVER=    -lsocket
  83.  
  84. #
  85. # Files.
  86. #
  87.  
  88. # List of source files for saber.
  89.  
  90. PROTOCOL_SRC = \
  91.         cutil.c \
  92.         futil.c \
  93.         ircfiles.c \
  94.         irfileio.c \
  95.         irfiles.c \
  96.         irtfiles.c \
  97.         panic.c \
  98.         sockets.c \
  99.         transprt.c \
  100.         ustubs.c \
  101.         wmessage.c \
  102.         wprot.c \
  103.         wutil.c \
  104.         zprot.c \
  105.         zutil.c \
  106.          ztype1.c \
  107.         docid.c \
  108.         list.c \
  109.         lock.c
  110.  
  111. IR_SRC = \
  112.         ir.c \
  113.         irretrvl.c \
  114.         stoplist.c \
  115.          irsearch.c \
  116.         trie.c
  117.  
  118. CLIENT_SRC = \
  119.         ui.c
  120.  
  121. CLIENT_LOCAL_SRC = \
  122.         ui-local.c
  123.  
  124. INV_SRC  =    $(SOURCES) \
  125.         sersrch.c \
  126.         irhash.c \
  127.         hash.c \
  128.         irinv.c
  129.  
  130. SIG_SRC  =     $(SOURCES) \
  131.         sigsrch.c \
  132.         sighash.c \
  133.         hash.c
  134.  
  135. INDEX_SRC=    irbuild.c
  136.  
  137. SERVER_SRC=    $(INV_SRC) \
  138.         server.c
  139.  
  140. # List of object files for saber and regular compilation.
  141. # Should correspond to source files.
  142.  
  143. PROTOCOL_OBJ =    \
  144.         cutil.o \
  145.         futil.o \
  146.         ircfiles.o \
  147.         irfileio.o \
  148.         irfiles.o \
  149.         panic.o \
  150.         sockets.o \
  151.         transprt.o \
  152.         ustubs.o \
  153.         wmessage.o \
  154.         wprot.o \
  155.         wutil.o \
  156.         zprot.o \
  157.         zutil.o \
  158.          ztype1.o \
  159.         docid.o \
  160.         list.o \
  161.         lock.o
  162.  
  163. IR_OBJS = \
  164.         ir.o \
  165.         irretrvl.o \
  166.          irsearch.o \
  167.         irtfiles.o \
  168.         stoplist.o \
  169.         trie.o
  170.  
  171. CLIENT_OBJS = \
  172.         ui.o
  173.  
  174. CLIENT_LOCAL_OBJS = \
  175.         ui-local.o
  176.  
  177. INV_OBJ  =     $(IR_OBJS) \
  178.         $(CLIENT_LOCAL_OBJS) \
  179.         sersrch.o \
  180.         irhash.o \
  181.         hash.o \
  182.         irinv.o
  183.  
  184. SIG_OBJ  =     $(IR_OBJS) \
  185.         $(CLIENT_LOCAL_OBJS) \
  186.         sigsrch.o \
  187.         sighash.o \
  188.         hash.o
  189.  
  190. INDEX_OBJ    = irbuild.o
  191.  
  192. SERVER_OBJ    = server.o
  193.  
  194. SERVER1_OBJ    = server-single.o
  195.  
  196. #
  197. # Compilation.
  198. #
  199.  
  200. all::    $(PROTOCOL_LIB) \
  201.         $(INV_LIB) \
  202.         $(SIG_LIB) \
  203.         $(CLIENT_LIB) \
  204.         $(INDEX_CMD) \
  205.         $(SERVER_CMD)
  206.  
  207. install:: $(INDEX_CMD) $(SERVER_CMD)
  208.     -rm -f $(BINDIR)/$(INDEX_CMD)
  209.     $(INSTALL) $(INDEX_CMD) $(BINDIR)/$(INDEX_CMD)
  210.     -rm -f $(BINDIR)/$(SERVER_CMD)
  211.     $(INSTALL) $(SERVER_CMD) $(BINDIR)/$(SERVER_CMD)
  212.  
  213. clean::
  214.     -rm -f $(INDEX_CMD) $(SERVER_CMD)
  215.  
  216. $(CLIENT_LOCAL_OBJS):: $(CLIENT_LOCAL_SRC)
  217.         $(CC) $(CFLAGS) -DLOCAL_SEARCH -c $(CLIENT_LOCAL_SRC)
  218.  
  219. $(PROTOCOL_LIB):: $(PROTOCOL_OBJ)
  220.         -mkdir -p $(LIBDIR)
  221.         $(AR) $(ARFLAGS) $@ $(PROTOCOL_OBJ)
  222.         $(RANLIB) $@
  223.  
  224. $(CLIENT_LIB):: $(CLIENT_OBJS)
  225.         -mkdir -p $(LIBDIR)
  226.         $(AR) $(ARFLAGS) $@ $(CLIENT_OBJS)
  227.         $(RANLIB) $@
  228.  
  229. $(INV_LIB)::     $(INV_OBJ)
  230.         -mkdir -p $(LIBDIR)
  231.         $(AR) $(ARFLAGS) $@ $(INV_OBJ)
  232.         $(RANLIB) $@
  233.  
  234. $(SIG_LIB)::     $(SIG_OBJ)
  235.         -mkdir -p $(LIBDIR)
  236.         $(AR) $(ARFLAGS) $@ $(SIG_OBJ)
  237.         $(RANLIB) $@
  238.  
  239. $(INDEX_CMD)::    $(INDEX_OBJ) $(PROTOCOL_LIB) $(INV_LIB) $(LIBFTW)
  240.         $(RM) $@
  241.         $(CC) $(CFLAGS) -o $@ $(INDEX_OBJ) \
  242.          $(INV_LIB) $(PROTOCOL_LIB) $(LIBFTW) -lm $(RESOLVER);
  243.  
  244. $(SERVER_CMD)::    $(SERVER_OBJ) $(PROTOCOL_LIB) $(INV_LIB) $(LIBFTW)
  245.         $(RM) $@
  246.         $(CC) $(CFLAGS) -o $@ $(SERVER_OBJ) \
  247.          $(INV_LIB) $(PROTOCOL_LIB) $(LIBFTW) -lm $(RESOLVER);
  248.  
  249. $(SERVER1_CMD)::    $(SERVER1_OBJ) $(PROTOCOL_LIB) $(INV_LIB) $(LIBFTW)
  250.         $(RM) $@
  251.         $(CC) $(CFLAGS) -o $@ $(SERVER1_OBJ) \
  252.          $(INV_LIB) $(PROTOCOL_LIB) $(LIBFTW) -lm $(RESOLVER);
  253.  
  254. ui-local.c :: ui.c
  255.     ln ui.c ui-local.c
  256.  
  257. DependTarget()
  258.